package com.atguigu.gulimall.search.vo;

import com.atguigu.common.to.es.SkuEsModel;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;

@Data
public class SearchResult {

    private List<SkuEsModel> products; //查询到的所有商品信息

    private Integer pageNum; //当前页码
    private Long total;//总记录数
    private Integer totalPages;//总页码
    private List<Integer> pageNavs;

    private List<BrandVo> brands; //当前查询到的结果，所涉及到的品牌
    private List<CatalogVo> catalogs; //当前查询到的结果，所涉及到的所有分类
    private List<AttrVo> attrs; //当前查询到的结果，所涉及到的所有属性信息

    //面包屑导航数据
    private List<NavVo> navs = new ArrayList<>();
    private List<Long> attrIds = new ArrayList<>();

    @Data
    public static class NavVo{
        private String navName;
        private String navValue;
        private String link;
    }


    //======以上是要返回给页面的所有信息=======


    @Data
    public static class BrandVo{
        private Long brandId;
        private String brandName;
        private String brandImg;

    }

    @Data
    public static class CatalogVo{
        private Long catalogId;
        private String catalogName;

    }


    @Data
    public static class AttrVo{
        private Long attrId; //属性的id
        private String attrName;    //属性的名字
        private List<String> attrValue; //属性的值，可能会有多个
    }

}
